// -*- c++ -*-
//
//  File:         parameter.hpp
//
//  Description:  definition of parameters for the ECGA.
//
//  Author:       Fernando Lobo
//
//  Date:         June/1999
//
//  Modified to be compliant with gcc 3.4 by Kumara Sastry
//  Date:        March/2006

#ifndef _parameter_hpp
#define _parameter_hpp


class parameter    
{
 public:
   double seed;              // seed for random number generator
   int    lchrom;            // chromosome length
   int    popsize;           // population size
   double pcross;            // probability of crossover
   int    tournament_size;   // tournament size
   int    stop_criteria;     // stopping criteria for the algorithm
   double stop_criteria_arg; // stop criteria argument (ex: maxgens= x)
   bool   learn_MPM;         // on = learns linkage, off = compact GA
   
   bool   report_pop;
   bool   report_string;
   bool   report_fitness;
   bool   report_MPM;
};


//
// constant definitions for stopping criterias
//
const int ALLELE_CONVERGENCE          = 60;
const int MAX_GENERATIONS             = 61;


#endif



